package cn.gok.controller;

import cn.gok.entity.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.validation.Valid;
import java.util.List;

/**
    测试SpringMVC的表单标签
 */
@Controller
public class UserController01 {


    @RequestMapping("/addUser1.html")
    public String toAddUserPage(User user){
        return "addUser1";
    }


    @PostMapping("/addUser1")
    public String addUser(@Valid User user,
                          BindingResult bindingResult){
        if (bindingResult.hasErrors()){

            /*
                跳回原始界面
                     我们在前端界面使用SpringMVC 的from表单标签
                     现在方法参数中的user 已经和前端的模型绑定。
                     如果在字段有错的情况下返回前端，
                     Spring MVC会自动将原始数据和错误提示数据，都回显到前端界面
             */
            return "addUser1";
        }

        System.out.println(user);
        return "success";

    }
}
